package com.winchain.chainbill.tbill.biz.rx;

import com.shell.framework.rx.OnErrorNotImplementedSubscriber;
import com.winchain.chainbill.tbill.base.po.TbDct;
import com.winchain.chainbill.tbill.base.po.TbRec;
import com.winchain.chainbill.tbill.base.po.TbSnd;
import com.winchain.chainbill.tbill.base.service.TbSndService;
import com.winchain.chainbill.tbill.biz.TBill;
import com.winchain.chainbill.tbill.biz.TBillEvent;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

@Component
public class TBillSndSubscriber extends OnErrorNotImplementedSubscriber<TBillEvent<TbDct>> {
	@Autowired
	private TbSndService tbSndService;

	public void onApplicationEvent(TBillEvent<TbDct> t) {
		Object source = t.getValue("snd");
		if (source != null) {
			TbSnd send = (TbSnd) source;
			send.setOptSeq(t.getBill().getRec().getOptSeq());
			this.tbSndService.saveOrUpdate(send);
		}
	}
}
